{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "pd.set_option('display.max_columns', 50)\n",
    "\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "column_names = ('duration',\n",
    "                'protocol_type',\n",
    "                'service',\n",
    "                'flag',\n",
    "                'src_bytes',\n",
    "                'dst_bytes',\n",
    "                'land',\n",
    "                'wrong_fragment',\n",
    "                'urgent',\n",
    "                'hot',\n",
    "                'num_failed_logins',\n",
    "                'logged_in',\n",
    "                'num_compromised',\n",
    "                'root_shell',\n",
    "                'su_attempted',\n",
    "                'num_root',\n",
    "                'num_file_creations',\n",
    "                'num_shells',\n",
    "                'num_access_files',\n",
    "                'num_outbound_cmds',\n",
    "                'is_host_login',\n",
    "                'is_guest_login',\n",
    "                'count',\n",
    "                'srv_count',\n",
    "                'serror_rate',\n",
    "                'srv_serror_rate',\n",
    "                'rerror_rate',\n",
    "                'srv_rerror_rate',\n",
    "                'same_srv_rate',\n",
    "                'diff_srv_rate',\n",
    "                'srv_diff_host_rate',\n",
    "                'dst_host_count',\n",
    "                'dst_host_srv_count',\n",
    "                'dst_host_same_srv_rate',\n",
    "                'dst_host_diff_srv_rate',\n",
    "                'dst_host_same_src_port_rate',\n",
    "                'dst_host_srv_diff_host_rate',\n",
    "                'dst_host_serror_rate',\n",
    "                'dst_host_srv_serror_rate',\n",
    "                'dst_host_rerror_rate',\n",
    "                'dst_host_srv_rerror_rate',\n",
    "                'attack_type',\n",
    "                'difficulty_level')\n",
    "\n",
    "data = pd.read_csv('../data/kddcup.data', header=None, names=column_names)\n",
    "\n",
    "data['Y'] = np.where(data['attack_type'] == 'normal.', 0, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    4898431.0\n",
       "mean           0.0\n",
       "std            0.0\n",
       "min            0.0\n",
       "25%            0.0\n",
       "50%            0.0\n",
       "75%            0.0\n",
       "max            0.0\n",
       "Name: num_outbound_cmds, dtype: float64"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['num_outbound_cmds'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.19859032412623553"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "d1 = data[data['Y'] == 0]\n",
    "len(d1)/len(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "duration                         int64\n",
       "protocol_type                   object\n",
       "service                         object\n",
       "flag                            object\n",
       "src_bytes                        int64\n",
       "dst_bytes                        int64\n",
       "land                             int64\n",
       "wrong_fragment                   int64\n",
       "urgent                           int64\n",
       "hot                              int64\n",
       "num_failed_logins                int64\n",
       "logged_in                        int64\n",
       "num_compromised                  int64\n",
       "root_shell                       int64\n",
       "su_attempted                     int64\n",
       "num_root                         int64\n",
       "num_file_creations               int64\n",
       "num_shells                       int64\n",
       "num_access_files                 int64\n",
       "num_outbound_cmds                int64\n",
       "is_host_login                    int64\n",
       "is_guest_login                   int64\n",
       "count                            int64\n",
       "srv_count                        int64\n",
       "serror_rate                    float64\n",
       "srv_serror_rate                float64\n",
       "rerror_rate                    float64\n",
       "srv_rerror_rate                float64\n",
       "same_srv_rate                  float64\n",
       "diff_srv_rate                  float64\n",
       "srv_diff_host_rate             float64\n",
       "dst_host_count                   int64\n",
       "dst_host_srv_count               int64\n",
       "dst_host_same_srv_rate         float64\n",
       "dst_host_diff_srv_rate         float64\n",
       "dst_host_same_src_port_rate    float64\n",
       "dst_host_srv_diff_host_rate    float64\n",
       "dst_host_serror_rate           float64\n",
       "dst_host_srv_serror_rate       float64\n",
       "dst_host_rerror_rate           float64\n",
       "dst_host_srv_rerror_rate       float64\n",
       "attack_type                     object\n",
       "difficulty_level                 int64\n",
       "Y                                int64\n",
       "dtype: object"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.dtypes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(11743, 44)"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['Y'].unique()\n",
    "data[data['Y'] == 0].shape\n",
    "data[data['Y'] == 1].shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "def attack_percentage(df):\n",
    "    return df.sum() / df.count() "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### duration (int64)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x11a755f98>"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data['duration'].hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plt.figure(figsize=(20, 20))\n",
    "# data.boxplot(column='duration')\n",
    "plt.boxplot(data['duration'], showfliers=False)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x120fd39e8>"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.boxplot(column=['duration'], by=['Y'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 159,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    25192.000000\n",
       "mean       305.054104\n",
       "std       2686.555640\n",
       "min          0.000000\n",
       "25%          0.000000\n",
       "50%          0.000000\n",
       "75%          0.000000\n",
       "max      42862.000000\n",
       "Name: duration, dtype: float64"
      ]
     },
     "execution_count": 159,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['duration'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 165,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.08034296602095903"
      ]
     },
     "execution_count": 165,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# percentage of data with non-zero duration\n",
    "data[data['duration'] != 0].shape[0] / data.shape[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 152,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.4885186464088398"
      ]
     },
     "execution_count": 152,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# percentage of attack for zero duration\n",
    "attack_percentage(data[data['duration'] == 0]['Y'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 169,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.2099802371541502"
      ]
     },
     "execution_count": 169,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "attack_percentage(data[data['duration'] != 0]['Y'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 168,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x13c48b2e8>"
      ]
     },
     "execution_count": 168,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(data[data['duration'] != 0]['duration'], data[data['duration'] != 0]['Y'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### protocol_type (object)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x141142828>"
      ]
     },
     "execution_count": 77,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.groupby('protocol_type')['duration'].count().plot.bar()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [],
   "source": [
    "# create dummy\n",
    "data['tcp_dummy'] = np.where(data['protocol_type'] == 'tcp', 1, 0)\n",
    "data['icmp_dummy'] = np.where(data['protocol_type'] == 'icmp', 1, 0)\n",
    "data['udp_dummy'] = np.where(data['protocol_type'] == 'udp', 1, 0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### service (object)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x13ba09080>"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1440x720 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20, 10))\n",
    "data.groupby('service')['duration'].count().plot.bar()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### flag (object)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>duration</th>\n",
       "      <th>protocol_type</th>\n",
       "      <th>service</th>\n",
       "      <th>src_bytes</th>\n",
       "      <th>dst_bytes</th>\n",
       "      <th>land</th>\n",
       "      <th>wrong_fragment</th>\n",
       "      <th>urgent</th>\n",
       "      <th>hot</th>\n",
       "      <th>num_failed_logins</th>\n",
       "      <th>logged_in</th>\n",
       "      <th>num_compromised</th>\n",
       "      <th>root_shell</th>\n",
       "      <th>su_attempted</th>\n",
       "      <th>num_root</th>\n",
       "      <th>num_file_creations</th>\n",
       "      <th>num_shells</th>\n",
       "      <th>num_access_files</th>\n",
       "      <th>num_outbound_cmds</th>\n",
       "      <th>is_host_login</th>\n",
       "      <th>is_guest_login</th>\n",
       "      <th>count</th>\n",
       "      <th>srv_count</th>\n",
       "      <th>serror_rate</th>\n",
       "      <th>srv_serror_rate</th>\n",
       "      <th>rerror_rate</th>\n",
       "      <th>srv_rerror_rate</th>\n",
       "      <th>same_srv_rate</th>\n",
       "      <th>diff_srv_rate</th>\n",
       "      <th>srv_diff_host_rate</th>\n",
       "      <th>dst_host_count</th>\n",
       "      <th>dst_host_srv_count</th>\n",
       "      <th>dst_host_same_srv_rate</th>\n",
       "      <th>dst_host_diff_srv_rate</th>\n",
       "      <th>dst_host_same_src_port_rate</th>\n",
       "      <th>dst_host_srv_diff_host_rate</th>\n",
       "      <th>dst_host_serror_rate</th>\n",
       "      <th>dst_host_srv_serror_rate</th>\n",
       "      <th>dst_host_rerror_rate</th>\n",
       "      <th>dst_host_srv_rerror_rate</th>\n",
       "      <th>attack_type</th>\n",
       "      <th>difficulty_level</th>\n",
       "      <th>Y</th>\n",
       "      <th>tcp_dummy</th>\n",
       "      <th>icmp_dummy</th>\n",
       "      <th>udp_dummy</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>flag</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>OTH</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>REJ</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "      <td>2216</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>RSTO</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "      <td>304</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>RSTOS0</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>RSTR</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "      <td>497</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>S0</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "      <td>7009</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>S1</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "      <td>88</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>S2</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "      <td>21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>S3</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>SF</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "      <td>14973</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>SH</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "      <td>43</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        duration  protocol_type  service  src_bytes  dst_bytes   land  \\\n",
       "flag                                                                    \n",
       "OTH            5              5        5          5          5      5   \n",
       "REJ         2216           2216     2216       2216       2216   2216   \n",
       "RSTO         304            304      304        304        304    304   \n",
       "RSTOS0        21             21       21         21         21     21   \n",
       "RSTR         497            497      497        497        497    497   \n",
       "S0          7009           7009     7009       7009       7009   7009   \n",
       "S1            88             88       88         88         88     88   \n",
       "S2            21             21       21         21         21     21   \n",
       "S3            15             15       15         15         15     15   \n",
       "SF         14973          14973    14973      14973      14973  14973   \n",
       "SH            43             43       43         43         43     43   \n",
       "\n",
       "        wrong_fragment  urgent    hot  num_failed_logins  logged_in  \\\n",
       "flag                                                                  \n",
       "OTH                  5       5      5                  5          5   \n",
       "REJ               2216    2216   2216               2216       2216   \n",
       "RSTO               304     304    304                304        304   \n",
       "RSTOS0              21      21     21                 21         21   \n",
       "RSTR               497     497    497                497        497   \n",
       "S0                7009    7009   7009               7009       7009   \n",
       "S1                  88      88     88                 88         88   \n",
       "S2                  21      21     21                 21         21   \n",
       "S3                  15      15     15                 15         15   \n",
       "SF               14973   14973  14973              14973      14973   \n",
       "SH                  43      43     43                 43         43   \n",
       "\n",
       "        num_compromised  root_shell  su_attempted  num_root  \\\n",
       "flag                                                          \n",
       "OTH                   5           5             5         5   \n",
       "REJ                2216        2216          2216      2216   \n",
       "RSTO                304         304           304       304   \n",
       "RSTOS0               21          21            21        21   \n",
       "RSTR                497         497           497       497   \n",
       "S0                 7009        7009          7009      7009   \n",
       "S1                   88          88            88        88   \n",
       "S2                   21          21            21        21   \n",
       "S3                   15          15            15        15   \n",
       "SF                14973       14973         14973     14973   \n",
       "SH                   43          43            43        43   \n",
       "\n",
       "        num_file_creations  num_shells  num_access_files  num_outbound_cmds  \\\n",
       "flag                                                                          \n",
       "OTH                      5           5                 5                  5   \n",
       "REJ                   2216        2216              2216               2216   \n",
       "RSTO                   304         304               304                304   \n",
       "RSTOS0                  21          21                21                 21   \n",
       "RSTR                   497         497               497                497   \n",
       "S0                    7009        7009              7009               7009   \n",
       "S1                      88          88                88                 88   \n",
       "S2                      21          21                21                 21   \n",
       "S3                      15          15                15                 15   \n",
       "SF                   14973       14973             14973              14973   \n",
       "SH                      43          43                43                 43   \n",
       "\n",
       "        is_host_login  is_guest_login  count  srv_count  serror_rate  \\\n",
       "flag                                                                   \n",
       "OTH                 5               5      5          5            5   \n",
       "REJ              2216            2216   2216       2216         2216   \n",
       "RSTO              304             304    304        304          304   \n",
       "RSTOS0             21              21     21         21           21   \n",
       "RSTR              497             497    497        497          497   \n",
       "S0               7009            7009   7009       7009         7009   \n",
       "S1                 88              88     88         88           88   \n",
       "S2                 21              21     21         21           21   \n",
       "S3                 15              15     15         15           15   \n",
       "SF              14973           14973  14973      14973        14973   \n",
       "SH                 43              43     43         43           43   \n",
       "\n",
       "        srv_serror_rate  rerror_rate  srv_rerror_rate  same_srv_rate  \\\n",
       "flag                                                                   \n",
       "OTH                   5            5                5              5   \n",
       "REJ                2216         2216             2216           2216   \n",
       "RSTO                304          304              304            304   \n",
       "RSTOS0               21           21               21             21   \n",
       "RSTR                497          497              497            497   \n",
       "S0                 7009         7009             7009           7009   \n",
       "S1                   88           88               88             88   \n",
       "S2                   21           21               21             21   \n",
       "S3                   15           15               15             15   \n",
       "SF                14973        14973            14973          14973   \n",
       "SH                   43           43               43             43   \n",
       "\n",
       "        diff_srv_rate  srv_diff_host_rate  dst_host_count  dst_host_srv_count  \\\n",
       "flag                                                                            \n",
       "OTH                 5                   5               5                   5   \n",
       "REJ              2216                2216            2216                2216   \n",
       "RSTO              304                 304             304                 304   \n",
       "RSTOS0             21                  21              21                  21   \n",
       "RSTR              497                 497             497                 497   \n",
       "S0               7009                7009            7009                7009   \n",
       "S1                 88                  88              88                  88   \n",
       "S2                 21                  21              21                  21   \n",
       "S3                 15                  15              15                  15   \n",
       "SF              14973               14973           14973               14973   \n",
       "SH                 43                  43              43                  43   \n",
       "\n",
       "        dst_host_same_srv_rate  dst_host_diff_srv_rate  \\\n",
       "flag                                                     \n",
       "OTH                          5                       5   \n",
       "REJ                       2216                    2216   \n",
       "RSTO                       304                     304   \n",
       "RSTOS0                      21                      21   \n",
       "RSTR                       497                     497   \n",
       "S0                        7009                    7009   \n",
       "S1                          88                      88   \n",
       "S2                          21                      21   \n",
       "S3                          15                      15   \n",
       "SF                       14973                   14973   \n",
       "SH                          43                      43   \n",
       "\n",
       "        dst_host_same_src_port_rate  dst_host_srv_diff_host_rate  \\\n",
       "flag                                                               \n",
       "OTH                               5                            5   \n",
       "REJ                            2216                         2216   \n",
       "RSTO                            304                          304   \n",
       "RSTOS0                           21                           21   \n",
       "RSTR                            497                          497   \n",
       "S0                             7009                         7009   \n",
       "S1                               88                           88   \n",
       "S2                               21                           21   \n",
       "S3                               15                           15   \n",
       "SF                            14973                        14973   \n",
       "SH                               43                           43   \n",
       "\n",
       "        dst_host_serror_rate  dst_host_srv_serror_rate  dst_host_rerror_rate  \\\n",
       "flag                                                                           \n",
       "OTH                        5                         5                     5   \n",
       "REJ                     2216                      2216                  2216   \n",
       "RSTO                     304                       304                   304   \n",
       "RSTOS0                    21                        21                    21   \n",
       "RSTR                     497                       497                   497   \n",
       "S0                      7009                      7009                  7009   \n",
       "S1                        88                        88                    88   \n",
       "S2                        21                        21                    21   \n",
       "S3                        15                        15                    15   \n",
       "SF                     14973                     14973                 14973   \n",
       "SH                        43                        43                    43   \n",
       "\n",
       "        dst_host_srv_rerror_rate  attack_type  difficulty_level      Y  \\\n",
       "flag                                                                     \n",
       "OTH                            5            5                 5      5   \n",
       "REJ                         2216         2216              2216   2216   \n",
       "RSTO                         304          304               304    304   \n",
       "RSTOS0                        21           21                21     21   \n",
       "RSTR                         497          497               497    497   \n",
       "S0                          7009         7009              7009   7009   \n",
       "S1                            88           88                88     88   \n",
       "S2                            21           21                21     21   \n",
       "S3                            15           15                15     15   \n",
       "SF                         14973        14973             14973  14973   \n",
       "SH                            43           43                43     43   \n",
       "\n",
       "        tcp_dummy  icmp_dummy  udp_dummy  \n",
       "flag                                      \n",
       "OTH             5           5          5  \n",
       "REJ          2216        2216       2216  \n",
       "RSTO          304         304        304  \n",
       "RSTOS0         21          21         21  \n",
       "RSTR          497         497        497  \n",
       "S0           7009        7009       7009  \n",
       "S1             88          88         88  \n",
       "S2             21          21         21  \n",
       "S3             15          15         15  \n",
       "SF          14973       14973      14973  \n",
       "SH             43          43         43  "
      ]
     },
     "execution_count": 92,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby('flag').count()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x137a406a0>"
      ]
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10, 5))\n",
    "data.groupby('flag')['duration'].count().plot.bar()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 119,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'SF': 0.15427769985974754, 'S0': 0.98858610358111, 'REJ': 0.7675992779783394, 'RSTR': 0.9436619718309859, 'SH': 1.0, 'RSTO': 0.8552631578947368, 'S1': 0.022727272727272728, 'RSTOS0': 1.0, 'S3': 0.0, 'S2': 0.19047619047619047, 'OTH': 0.8}\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "flag_attack_percentage = {}\n",
    "for flag_type in data['flag'].unique().tolist():\n",
    "    flag_attack_percentage[flag_type] = attack_percentage(data[data['flag'] == flag_type]['Y'])\n",
    "print(flag_attack_percentage)\n",
    "\n",
    "for flag_type in data['flag'].unique().tolist():\n",
    "    plt.bar(flag_type, attack_percentage(data[data['flag'] == flag_type]['Y']))\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### src_bytes(int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 136,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count        25192.000000\n",
       "mean         24330.628215\n",
       "std        2410805.402028\n",
       "min              0.000000\n",
       "25%              0.000000\n",
       "50%             44.000000\n",
       "75%            279.000000\n",
       "max      381709090.000000\n",
       "Name: src_bytes, dtype: object"
      ]
     },
     "execution_count": 136,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['src_bytes'].describe().apply(lambda x: format(x, 'f'))\n",
    "# data[['src_bytes']].describe().apply(lambda s: s.apply(lambda x: format(x, 'g')))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 150,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0, 1000000.0)"
      ]
     },
     "execution_count": 150,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(data['duration'], data['src_bytes'], c=data['Y'])\n",
    "plt.xlim(0, 2e4)\n",
    "plt.ylim(0, 1e6)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 211,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x13fdad5f8>"
      ]
     },
     "execution_count": 211,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.boxplot(column=['src_bytes'], by=['Y'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### dst_bytes (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 143,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count      25192.000000\n",
       "mean        3491.847174\n",
       "std        88830.718330\n",
       "min            0.000000\n",
       "25%            0.000000\n",
       "50%            0.000000\n",
       "75%          530.250000\n",
       "max      5151385.000000\n",
       "Name: dst_bytes, dtype: object"
      ]
     },
     "execution_count": 143,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['dst_bytes'].describe().apply(lambda x: format(x, 'f'))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 145,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1370ab4a8>"
      ]
     },
     "execution_count": 145,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1440x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20, 8))\n",
    "plt.scatter(data['dst_bytes'], data['Y'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### land (dummy)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### wrong_fragment (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 179,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "wrong_fragment\n",
       "0    24968\n",
       "1       37\n",
       "3      187\n",
       "Name: duration, dtype: int64"
      ]
     },
     "execution_count": 179,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby('wrong_fragment')['duration'].count()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### urgent (dummy)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### hot (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 186,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>duration</th>\n",
       "      <th>protocol_type</th>\n",
       "      <th>service</th>\n",
       "      <th>flag</th>\n",
       "      <th>src_bytes</th>\n",
       "      <th>dst_bytes</th>\n",
       "      <th>land</th>\n",
       "      <th>wrong_fragment</th>\n",
       "      <th>urgent</th>\n",
       "      <th>num_failed_logins</th>\n",
       "      <th>logged_in</th>\n",
       "      <th>num_compromised</th>\n",
       "      <th>root_shell</th>\n",
       "      <th>su_attempted</th>\n",
       "      <th>num_root</th>\n",
       "      <th>num_file_creations</th>\n",
       "      <th>num_shells</th>\n",
       "      <th>num_access_files</th>\n",
       "      <th>num_outbound_cmds</th>\n",
       "      <th>is_host_login</th>\n",
       "      <th>is_guest_login</th>\n",
       "      <th>count</th>\n",
       "      <th>srv_count</th>\n",
       "      <th>serror_rate</th>\n",
       "      <th>srv_serror_rate</th>\n",
       "      <th>rerror_rate</th>\n",
       "      <th>srv_rerror_rate</th>\n",
       "      <th>same_srv_rate</th>\n",
       "      <th>diff_srv_rate</th>\n",
       "      <th>srv_diff_host_rate</th>\n",
       "      <th>dst_host_count</th>\n",
       "      <th>dst_host_srv_count</th>\n",
       "      <th>dst_host_same_srv_rate</th>\n",
       "      <th>dst_host_diff_srv_rate</th>\n",
       "      <th>dst_host_same_src_port_rate</th>\n",
       "      <th>dst_host_srv_diff_host_rate</th>\n",
       "      <th>dst_host_serror_rate</th>\n",
       "      <th>dst_host_srv_serror_rate</th>\n",
       "      <th>dst_host_rerror_rate</th>\n",
       "      <th>dst_host_srv_rerror_rate</th>\n",
       "      <th>attack_type</th>\n",
       "      <th>difficulty_level</th>\n",
       "      <th>Y</th>\n",
       "      <th>tcp_dummy</th>\n",
       "      <th>icmp_dummy</th>\n",
       "      <th>udp_dummy</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>hot</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "      <td>24672</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "      <td>78</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "      <td>200</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "      <td>37</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>5</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "      <td>17</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>6</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "      <td>26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>7</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>11</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>12</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>14</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>15</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>17</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>18</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>19</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>20</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>22</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>24</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>25</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>28</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "      <td>52</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>30</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "      <td>55</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>77</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     duration  protocol_type  service   flag  src_bytes  dst_bytes   land  \\\n",
       "hot                                                                         \n",
       "0       24672          24672    24672  24672      24672      24672  24672   \n",
       "1          78             78       78     78         78         78     78   \n",
       "2         200            200      200    200        200        200    200   \n",
       "3           7              7        7      7          7          7      7   \n",
       "4          37             37       37     37         37         37     37   \n",
       "5          17             17       17     17         17         17     17   \n",
       "6          26             26       26     26         26         26     26   \n",
       "7           2              2        2      2          2          2      2   \n",
       "11          1              1        1      1          1          1      1   \n",
       "12          1              1        1      1          1          1      1   \n",
       "14          3              3        3      3          3          3      3   \n",
       "15          1              1        1      1          1          1      1   \n",
       "17          1              1        1      1          1          1      1   \n",
       "18          6              6        6      6          6          6      6   \n",
       "19          8              8        8      8          8          8      8   \n",
       "20          1              1        1      1          1          1      1   \n",
       "22         13             13       13     13         13         13     13   \n",
       "24          9              9        9      9          9          9      9   \n",
       "25          1              1        1      1          1          1      1   \n",
       "28         52             52       52     52         52         52     52   \n",
       "30         55             55       55     55         55         55     55   \n",
       "77          1              1        1      1          1          1      1   \n",
       "\n",
       "     wrong_fragment  urgent  num_failed_logins  logged_in  num_compromised  \\\n",
       "hot                                                                          \n",
       "0             24672   24672              24672      24672            24672   \n",
       "1                78      78                 78         78               78   \n",
       "2               200     200                200        200              200   \n",
       "3                 7       7                  7          7                7   \n",
       "4                37      37                 37         37               37   \n",
       "5                17      17                 17         17               17   \n",
       "6                26      26                 26         26               26   \n",
       "7                 2       2                  2          2                2   \n",
       "11                1       1                  1          1                1   \n",
       "12                1       1                  1          1                1   \n",
       "14                3       3                  3          3                3   \n",
       "15                1       1                  1          1                1   \n",
       "17                1       1                  1          1                1   \n",
       "18                6       6                  6          6                6   \n",
       "19                8       8                  8          8                8   \n",
       "20                1       1                  1          1                1   \n",
       "22               13      13                 13         13               13   \n",
       "24                9       9                  9          9                9   \n",
       "25                1       1                  1          1                1   \n",
       "28               52      52                 52         52               52   \n",
       "30               55      55                 55         55               55   \n",
       "77                1       1                  1          1                1   \n",
       "\n",
       "     root_shell  su_attempted  num_root  num_file_creations  num_shells  \\\n",
       "hot                                                                       \n",
       "0         24672         24672     24672               24672       24672   \n",
       "1            78            78        78                  78          78   \n",
       "2           200           200       200                 200         200   \n",
       "3             7             7         7                   7           7   \n",
       "4            37            37        37                  37          37   \n",
       "5            17            17        17                  17          17   \n",
       "6            26            26        26                  26          26   \n",
       "7             2             2         2                   2           2   \n",
       "11            1             1         1                   1           1   \n",
       "12            1             1         1                   1           1   \n",
       "14            3             3         3                   3           3   \n",
       "15            1             1         1                   1           1   \n",
       "17            1             1         1                   1           1   \n",
       "18            6             6         6                   6           6   \n",
       "19            8             8         8                   8           8   \n",
       "20            1             1         1                   1           1   \n",
       "22           13            13        13                  13          13   \n",
       "24            9             9         9                   9           9   \n",
       "25            1             1         1                   1           1   \n",
       "28           52            52        52                  52          52   \n",
       "30           55            55        55                  55          55   \n",
       "77            1             1         1                   1           1   \n",
       "\n",
       "     num_access_files  num_outbound_cmds  is_host_login  is_guest_login  \\\n",
       "hot                                                                       \n",
       "0               24672              24672          24672           24672   \n",
       "1                  78                 78             78              78   \n",
       "2                 200                200            200             200   \n",
       "3                   7                  7              7               7   \n",
       "4                  37                 37             37              37   \n",
       "5                  17                 17             17              17   \n",
       "6                  26                 26             26              26   \n",
       "7                   2                  2              2               2   \n",
       "11                  1                  1              1               1   \n",
       "12                  1                  1              1               1   \n",
       "14                  3                  3              3               3   \n",
       "15                  1                  1              1               1   \n",
       "17                  1                  1              1               1   \n",
       "18                  6                  6              6               6   \n",
       "19                  8                  8              8               8   \n",
       "20                  1                  1              1               1   \n",
       "22                 13                 13             13              13   \n",
       "24                  9                  9              9               9   \n",
       "25                  1                  1              1               1   \n",
       "28                 52                 52             52              52   \n",
       "30                 55                 55             55              55   \n",
       "77                  1                  1              1               1   \n",
       "\n",
       "     count  srv_count  serror_rate  srv_serror_rate  rerror_rate  \\\n",
       "hot                                                                \n",
       "0    24672      24672        24672            24672        24672   \n",
       "1       78         78           78               78           78   \n",
       "2      200        200          200              200          200   \n",
       "3        7          7            7                7            7   \n",
       "4       37         37           37               37           37   \n",
       "5       17         17           17               17           17   \n",
       "6       26         26           26               26           26   \n",
       "7        2          2            2                2            2   \n",
       "11       1          1            1                1            1   \n",
       "12       1          1            1                1            1   \n",
       "14       3          3            3                3            3   \n",
       "15       1          1            1                1            1   \n",
       "17       1          1            1                1            1   \n",
       "18       6          6            6                6            6   \n",
       "19       8          8            8                8            8   \n",
       "20       1          1            1                1            1   \n",
       "22      13         13           13               13           13   \n",
       "24       9          9            9                9            9   \n",
       "25       1          1            1                1            1   \n",
       "28      52         52           52               52           52   \n",
       "30      55         55           55               55           55   \n",
       "77       1          1            1                1            1   \n",
       "\n",
       "     srv_rerror_rate  same_srv_rate  diff_srv_rate  srv_diff_host_rate  \\\n",
       "hot                                                                      \n",
       "0              24672          24672          24672               24672   \n",
       "1                 78             78             78                  78   \n",
       "2                200            200            200                 200   \n",
       "3                  7              7              7                   7   \n",
       "4                 37             37             37                  37   \n",
       "5                 17             17             17                  17   \n",
       "6                 26             26             26                  26   \n",
       "7                  2              2              2                   2   \n",
       "11                 1              1              1                   1   \n",
       "12                 1              1              1                   1   \n",
       "14                 3              3              3                   3   \n",
       "15                 1              1              1                   1   \n",
       "17                 1              1              1                   1   \n",
       "18                 6              6              6                   6   \n",
       "19                 8              8              8                   8   \n",
       "20                 1              1              1                   1   \n",
       "22                13             13             13                  13   \n",
       "24                 9              9              9                   9   \n",
       "25                 1              1              1                   1   \n",
       "28                52             52             52                  52   \n",
       "30                55             55             55                  55   \n",
       "77                 1              1              1                   1   \n",
       "\n",
       "     dst_host_count  dst_host_srv_count  dst_host_same_srv_rate  \\\n",
       "hot                                                               \n",
       "0             24672               24672                   24672   \n",
       "1                78                  78                      78   \n",
       "2               200                 200                     200   \n",
       "3                 7                   7                       7   \n",
       "4                37                  37                      37   \n",
       "5                17                  17                      17   \n",
       "6                26                  26                      26   \n",
       "7                 2                   2                       2   \n",
       "11                1                   1                       1   \n",
       "12                1                   1                       1   \n",
       "14                3                   3                       3   \n",
       "15                1                   1                       1   \n",
       "17                1                   1                       1   \n",
       "18                6                   6                       6   \n",
       "19                8                   8                       8   \n",
       "20                1                   1                       1   \n",
       "22               13                  13                      13   \n",
       "24                9                   9                       9   \n",
       "25                1                   1                       1   \n",
       "28               52                  52                      52   \n",
       "30               55                  55                      55   \n",
       "77                1                   1                       1   \n",
       "\n",
       "     dst_host_diff_srv_rate  dst_host_same_src_port_rate  \\\n",
       "hot                                                        \n",
       "0                     24672                        24672   \n",
       "1                        78                           78   \n",
       "2                       200                          200   \n",
       "3                         7                            7   \n",
       "4                        37                           37   \n",
       "5                        17                           17   \n",
       "6                        26                           26   \n",
       "7                         2                            2   \n",
       "11                        1                            1   \n",
       "12                        1                            1   \n",
       "14                        3                            3   \n",
       "15                        1                            1   \n",
       "17                        1                            1   \n",
       "18                        6                            6   \n",
       "19                        8                            8   \n",
       "20                        1                            1   \n",
       "22                       13                           13   \n",
       "24                        9                            9   \n",
       "25                        1                            1   \n",
       "28                       52                           52   \n",
       "30                       55                           55   \n",
       "77                        1                            1   \n",
       "\n",
       "     dst_host_srv_diff_host_rate  dst_host_serror_rate  \\\n",
       "hot                                                      \n",
       "0                          24672                 24672   \n",
       "1                             78                    78   \n",
       "2                            200                   200   \n",
       "3                              7                     7   \n",
       "4                             37                    37   \n",
       "5                             17                    17   \n",
       "6                             26                    26   \n",
       "7                              2                     2   \n",
       "11                             1                     1   \n",
       "12                             1                     1   \n",
       "14                             3                     3   \n",
       "15                             1                     1   \n",
       "17                             1                     1   \n",
       "18                             6                     6   \n",
       "19                             8                     8   \n",
       "20                             1                     1   \n",
       "22                            13                    13   \n",
       "24                             9                     9   \n",
       "25                             1                     1   \n",
       "28                            52                    52   \n",
       "30                            55                    55   \n",
       "77                             1                     1   \n",
       "\n",
       "     dst_host_srv_serror_rate  dst_host_rerror_rate  dst_host_srv_rerror_rate  \\\n",
       "hot                                                                             \n",
       "0                       24672                 24672                     24672   \n",
       "1                          78                    78                        78   \n",
       "2                         200                   200                       200   \n",
       "3                           7                     7                         7   \n",
       "4                          37                    37                        37   \n",
       "5                          17                    17                        17   \n",
       "6                          26                    26                        26   \n",
       "7                           2                     2                         2   \n",
       "11                          1                     1                         1   \n",
       "12                          1                     1                         1   \n",
       "14                          3                     3                         3   \n",
       "15                          1                     1                         1   \n",
       "17                          1                     1                         1   \n",
       "18                          6                     6                         6   \n",
       "19                          8                     8                         8   \n",
       "20                          1                     1                         1   \n",
       "22                         13                    13                        13   \n",
       "24                          9                     9                         9   \n",
       "25                          1                     1                         1   \n",
       "28                         52                    52                        52   \n",
       "30                         55                    55                        55   \n",
       "77                          1                     1                         1   \n",
       "\n",
       "     attack_type  difficulty_level      Y  tcp_dummy  icmp_dummy  udp_dummy  \n",
       "hot                                                                          \n",
       "0          24672             24672  24672      24672       24672      24672  \n",
       "1             78                78     78         78          78         78  \n",
       "2            200               200    200        200         200        200  \n",
       "3              7                 7      7          7           7          7  \n",
       "4             37                37     37         37          37         37  \n",
       "5             17                17     17         17          17         17  \n",
       "6             26                26     26         26          26         26  \n",
       "7              2                 2      2          2           2          2  \n",
       "11             1                 1      1          1           1          1  \n",
       "12             1                 1      1          1           1          1  \n",
       "14             3                 3      3          3           3          3  \n",
       "15             1                 1      1          1           1          1  \n",
       "17             1                 1      1          1           1          1  \n",
       "18             6                 6      6          6           6          6  \n",
       "19             8                 8      8          8           8          8  \n",
       "20             1                 1      1          1           1          1  \n",
       "22            13                13     13         13          13         13  \n",
       "24             9                 9      9          9           9          9  \n",
       "25             1                 1      1          1           1          1  \n",
       "28            52                52     52         52          52         52  \n",
       "30            55                55     55         55          55         55  \n",
       "77             1                 1      1          1           1          1  "
      ]
     },
     "execution_count": 186,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.groupby('hot').count()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### num_failed_logins (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 189,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    25192.000000\n",
       "mean         0.001191\n",
       "std          0.045418\n",
       "min          0.000000\n",
       "25%          0.000000\n",
       "50%          0.000000\n",
       "75%          0.000000\n",
       "max          4.000000\n",
       "Name: num_failed_logins, dtype: float64"
      ]
     },
     "execution_count": 189,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['num_failed_logins'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 192,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x136bd5828>"
      ]
     },
     "execution_count": 192,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(data['duration'], data['num_failed_logins'], c=data['Y'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### logged_in (dummy)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### num_compromised (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 199,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    25192.000000\n",
       "mean         0.227850\n",
       "std         10.417352\n",
       "min          0.000000\n",
       "25%          0.000000\n",
       "50%          0.000000\n",
       "75%          0.000000\n",
       "max        884.000000\n",
       "Name: num_compromised, dtype: float64"
      ]
     },
     "execution_count": 199,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['num_compromised'].describe()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### root_shell (dummy)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### su_attempted (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 205,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "21"
      ]
     },
     "execution_count": 205,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[data['su_attempted'] > 0].shape[0]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### num_root (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 206,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    25192.000000\n",
       "mean         0.249841\n",
       "std         11.500842\n",
       "min          0.000000\n",
       "25%          0.000000\n",
       "50%          0.000000\n",
       "75%          0.000000\n",
       "max        975.000000\n",
       "Name: num_root, dtype: float64"
      ]
     },
     "execution_count": 206,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data['num_root'].describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 207,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "134"
      ]
     },
     "execution_count": 207,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[data['num_root'] > 0].shape[0]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### count (int)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 212,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1402f05c0>"
      ]
     },
     "execution_count": 212,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.boxplot(column=['count'], by=['Y'])"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
